package com.caipos.mqtt.config;

import org.springframework.integration.annotation.MessagingGateway;
import org.springframework.integration.mqtt.support.MqttHeaders;
import org.springframework.messaging.handler.annotation.Header;

/**
 * FileName: MqttTestServer
 * 
 * @author: weihengXu Description: Mqtt传输使用 History:
 */
@MessagingGateway(defaultRequestChannel = "mqttOutboundChannel"
// , defaultHeaders = {@GatewayHeader(name = "tic", value = "PushException")}
)
public interface MqttGateway {
	/**
	 * data为发送的消息内容，topic为主题。指定topic，qos 默认为 1 则我们的接口可以根据需要，向不同的主题发送消息，
	 * 方便灵活应用。如果不指定，则使用默认配置的主题
	 */
	void sendToMqtt(String payload);
	void sendToMqtt(String payload, @Header(MqttHeaders.TOPIC) String topic);
	void sendToMqtt(String payload, @Header(MqttHeaders.TOPIC) String topic, @Header(MqttHeaders.QOS) int qos);
}
